A semiconductor laser is used as a light source for optical communication and data processing in optical fiber communication, optical interconnect, and the like. In general, a semiconductor laser has fluctuation in emitted optical output and wavelength depending on environmental temperature, for example, emitted optical output becomes less when temperatures go higher. To cope with such temperature fluctuations of a semiconductor laser, there are methods with which a stable characteristic can be obtained even when the environmental temperature changes which include a method of adjusting temperature using a TEC (thermoelectric cooler), and a method using an APC (Automatic Power Control) circuit. Also, as a method other than the above, a semiconductor laser is disclosed that uses a reflection mirror having wavelength dependency to make a stable level of emitted optical output in response to wavelength shifts due to environmental temperature changes.